package com.itfenghuang.day12;

import java.io.*;

public class A02_转换流 {
    /*
        1.概述
            字符流=字节流+编码表
        2.转换流
            1).InputStreamReader:  输入流
            2).构造方法:public InputStreamReader(InputStream in,
                                                 String charsetName)
                            参数:in:字节输入流对象
                                 charsetName:指定的编码方式
            3).实现步骤
                1).创建InputStreamReader对象
                2).循环读
                3).释放资源
            4).OutputStreamWrite:输出流
                public OutputStream
     */
    public static void main(String[] args) throws IOException {
//        当文件的编码方式和idea的编码方式不一致的时候,会出现中文乱码
//        字符流读数据();
//        转换流读数据();
        转换流写数据();

    }

    private static void 转换流写数据() throws IOException {
        OutputStreamWriter yy = new OutputStreamWriter(
                new FileOutputStream("F:\\aaa\\a.txt"), "gbk");
        yy.write("什么狗东西");
        yy.close();
    }

    private static void 转换流读数据() throws IOException {
        InputStreamReader tt = new InputStreamReader(new FileInputStream
                ("F:\\aaa\\a.txt"),"gbk");
        //循环读   一个字节一个字节的读
        int i;
        while ((i=tt.read())!=-1){
            System.out.print((char)i);
        }
//        释放资源
        tt.close();
    }

    private static void 字符流读数据() throws IOException {
        //        创建FileReader对象
        FileReader fr = new FileReader("F:\\aaa\\a.txt");
//        循环读  一次读一个字符
        int i;
        while((i=fr.read())!=-1){
            System.out.print((char) i);
        }
//        释放资源
        fr.close();
    }
}
